#include <boost/lexical_cast.hpp>
#include <string>
#include "../../Graphics/Presentation.h"
#include "./Factory.h"

#include "./Actor.h"

namespace GameLogic {
namespace Objects {

Factory::Factory() {}

Factory::~Factory() {}

GameObject* Factory::createObject( GameObject::IdType id, Data* data ) {
	Ogre::SceneNode* sn = 0; /*
		Graphics::Presentation::getInstance().createSceneNode(
				std::string("act") + boost::lexical_cast< std::string >( id.toNumeric() )
		);*/
	GameObject* go = 0;
	switch( id.getType() ) {

	case OT_PLAYER_NINJA:
		go = new Actor(
				id, //id
				0.5f,
				sn,
				data
		);
		break;

	case OT_PLAYER_PIRATE:
		go = new Actor(
				id, //id
				0.5f,
				sn,
				data
		);
		break;

	case OT_GENERIC_BULLET:

		break;

	//default:

	}
	return go;
}




} //namespace Level
} //namespace Objects
